(0) Obligation:

Runtime Complexity Relative TRS:
The TRS R consists of the following rules:

disj(T) → True
disj(F) → True
conj(Or(o1, o2)) → False
conj(T) → True
conj(F) → True
disj(And(a1, a2)) → conj(And(a1, a2))
disj(Or(t1, t2)) → and(conj(t1), disj(t1))
conj(And(t1, t2)) → and(disj(t1), conj(t1))
bool(T) → True
bool(F) → True
bool(And(a1, a2)) → False
bool(Or(o1, o2)) → False
isConsTerm(T, T) → True
isConsTerm(T, F) → False
isConsTerm(T, And(y1, y2)) → False
isConsTerm(T, Or(x1, x2)) → False
isConsTerm(F, T) → False
isConsTerm(F, F) → True
isConsTerm(F, And(y1, y2)) → False
isConsTerm(F, Or(x1, x2)) → False
isConsTerm(And(a1, a2), T) → False
isConsTerm(And(a1, a2), F) → False
isConsTerm(And(a1, a2), And(y1, y2)) → True
isConsTerm(And(a1, a2), Or(x1, x2)) → False
isConsTerm(Or(o1, o2), T) → False
isConsTerm(Or(o1, o2), F) → False
isConsTerm(Or(o1, o2), And(y1, y2)) → False
isConsTerm(Or(o1, o2), Or(x1, x2)) → True
isOp(T) → False
isOp(F) → False
isOp(And(t1, t2)) → True
isOp(Or(t1, t2)) → True
isAnd(T) → False
isAnd(F) → False
isAnd(And(t1, t2)) → True
isAnd(Or(t1, t2)) → False
getSecond(And(t1, t2)) → t1
getSecond(Or(t1, t2)) → t1
getFirst(And(t1, t2)) → t1
getFirst(Or(t1, t2)) → t1
disjconj(p) → disj(p)

The (relative) TRS S consists of the following rules:

and(False, False) → False
and(True, False) → False
and(False, True) → False
and(True, True) → True

Rewrite Strategy: INNERMOST

(1) SlicingProof (LOWER BOUND(ID) transformation)

Sliced the following arguments:
Or/1
And/1

(2) Obligation:

Runtime Complexity Relative TRS:
The TRS R consists of the following rules:

disj(T) → True
disj(F) → True
conj(Or(o1)) → False
conj(T) → True
conj(F) → True
disj(And(a1)) → conj(And(a1))
disj(Or(t1)) → and(conj(t1), disj(t1))
conj(And(t1)) → and(disj(t1), conj(t1))
bool(T) → True
bool(F) → True
bool(And(a1)) → False
bool(Or(o1)) → False
isConsTerm(T, T) → True
isConsTerm(T, F) → False
isConsTerm(T, And(y1)) → False
isConsTerm(T, Or(x1)) → False
isConsTerm(F, T) → False
isConsTerm(F, F) → True
isConsTerm(F, And(y1)) → False
isConsTerm(F, Or(x1)) → False
isConsTerm(And(a1), T) → False
isConsTerm(And(a1), F) → False
isConsTerm(And(a1), And(y1)) → True
isConsTerm(And(a1), Or(x1)) → False
isConsTerm(Or(o1), T) → False
isConsTerm(Or(o1), F) → False
isConsTerm(Or(o1), And(y1)) → False
isConsTerm(Or(o1), Or(x1)) → True
isOp(T) → False
isOp(F) → False
isOp(And(t1)) → True
isOp(Or(t1)) → True
isAnd(T) → False
isAnd(F) → False
isAnd(And(t1)) → True
isAnd(Or(t1)) → False
getSecond(And(t1)) → t1
getSecond(Or(t1)) → t1
getFirst(And(t1)) → t1
getFirst(Or(t1)) → t1
disjconj(p) → disj(p)

The (relative) TRS S consists of the following rules:

and(False, False) → False
and(True, False) → False
and(False, True) → False
and(True, True) → True

Rewrite Strategy: INNERMOST

(3) DecreasingLoopProof (EQUIVALENT transformation)

The following loop(s) give(s) rise to the lower bound Ω(2n):
The rewrite sequence
disj(And(And(t1252_0))) →+ and(disj(And(t1252_0)), and(disj(t1252_0), conj(t1252_0)))
gives rise to a decreasing loop by considering the right hand sides subterm at position [0].
The pumping substitution is [t1252_0 / And(t1252_0)].
The result substitution is [ ].

The rewrite sequence
disj(And(And(t1252_0))) →+ and(disj(And(t1252_0)), and(disj(t1252_0), conj(t1252_0)))
gives rise to a decreasing loop by considering the right hand sides subterm at position [1,0].
The pumping substitution is [t1252_0 / And(And(t1252_0))].
The result substitution is [ ].

(4) BOUNDS(2^n, INF)